package xyz.xiaoshengfu.xrpc.data;

import java.io.Serializable;

/**
 * <p>Title: XRpcData</p>
 * <p>Description: xRPC请求数据包</p>
 * @author xiaoshengfu(2439323118@qq.com)
 * @date 2020年2月25日
 */
public final class XRpcRequestData implements Serializable {

	private static final long serialVersionUID = 1L;

	public static final int AUTH = 0;
	public static final int RPC = 1;

	private Integer requestType;
	private String sendApplicationName;
	private String acceptApplicationName;
	private String interfaceName;
	private String methodName;
	private Object[] methodParameters;
	private Integer timeoutTime;
	private Long requestID;

	public XRpcRequestData() {
		super();
	}

	public XRpcRequestData(Integer requestType, String sendApplicationName, String acceptApplicationName,
			String interfaceName, String methodName, Object[] methodParameters, Integer timeoutTime, Long requestID) {
		super();
		this.requestType = requestType;
		this.sendApplicationName = sendApplicationName;
		this.acceptApplicationName = acceptApplicationName;
		this.interfaceName = interfaceName;
		this.methodName = methodName;
		this.methodParameters = methodParameters;
		this.timeoutTime = timeoutTime;
		this.requestID = requestID;
	}

	public Integer getRequestType() {
		return requestType;
	}

	public void setRequestType(Integer requestType) {
		this.requestType = requestType;
	}

	public String getSendApplicationName() {
		return sendApplicationName;
	}

	public void setSendApplicationName(String sendApplicationName) {
		this.sendApplicationName = sendApplicationName;
	}

	public String getAcceptApplicationName() {
		return acceptApplicationName;
	}

	public void setAcceptApplicationName(String acceptApplicationName) {
		this.acceptApplicationName = acceptApplicationName;
	}

	public String getInterfaceName() {
		return interfaceName;
	}

	public void setInterfaceName(String interfaceName) {
		this.interfaceName = interfaceName;
	}

	public String getMethodName() {
		return methodName;
	}

	public void setMethodName(String methodName) {
		this.methodName = methodName;
	}

	public Object[] getMethodParameters() {
		return methodParameters;
	}

	public void setMethodParameters(Object[] methodParameters) {
		this.methodParameters = methodParameters;
	}

	public Integer getTimeoutTime() {
		return timeoutTime;
	}

	public void setTimeoutTime(Integer timeoutTime) {
		this.timeoutTime = timeoutTime;
	}

	public Long getRequestID() {
		return requestID;
	}

	public void setRequestID(Long requestID) {
		this.requestID = requestID;
	}

}
